package com.zjd.association.service;

import com.zjd.association.common.PageWrapper;
import com.zjd.association.entity.Members;
import com.zjd.association.service.base.BaseService;

/**
 * 成员信息 服务层
 *
 * @author: zjd
 * @date: 2024-5-22
 */
public interface MembersService extends BaseService<Members, String> {

    /**
     * 指定用户是否是管理员
     *
     * @param userId 指定用户ID
     * @param teamId 团队ID
     * @return 结果
     */
    Boolean isManager(String teamId, String userId);

    /**
     * 分页查询成员信息
     *
     * @param pageIndex 当前页码
     * @param pageSize  每页数据量
     * @param teamName  活动名称
     * @param userName  成员姓名
     * @return 成员信息
     */
    PageWrapper getPageAll(Long pageIndex, Long pageSize, String teamName, String userName);

    /**
     * 分页查询成员信息
     *
     * @param pageIndex 当前页码
     * @param pageSize  每页数据量
     * @param manId     管理员ID
     * @param teamName  活动名称
     * @param userName  成员姓名
     * @return 成员信息
     */
    PageWrapper getPageByManId(
            Long pageIndex, Long pageSize, String manId, String teamName, String userName
    );

}